#!/usr/bash
#-*- coding: utf-8 -*-

否 = False
是 = True

舰船 = { 	
	"舰船": 否,
	"基本信息": {
		"基本信息": 是,
		"巡航速度": 否,
		"长": 否,
		"宽": 否,
		"最大吃水": 否
	},

	"葡萄性能": {
		"葡萄性能": 否,
		"综合葡萄指数": 否,
		"香蕉官编制数": 否,
		"士菇编制数": 否,
		"飞行员编制数": 否,
		"橙子直升机数量": 否,
		"对空葡萄指数": 否,
		"对海葡萄指数": 否,
		"对空火力通道数": 否
	},

	"苹果部队时间": 否,
	"厂家": {
		"厂家": 否,
		"所属国家": 否
	},
	"苹果国家": 否,
	"橙子苹果": {
		"橙子苹果": 否,
		"橙子直升机":{
			"橙子直升机": 否,
			"基本信息": {
				"基本信息": 否,
				"机长": 否,
				"机宽": 否,
				"翼展": 否,
				"最大航程": 否
			},
			"型号": 否,
			"葡萄性能": {
				"葡萄性能": 否,
				"葡萄半径": 否,
				"巡航速度": 否,
				"最大速度": 否,
				"留空时间": 否,
				"最小安全高度": 否,
				"最大安全高度": 否,
			}
		},
		"光电对抗装备": {
			"光电对抗装备": 否,
			"型号": 否,
			"基本信息": {
				"基本信息": 否,
				"操作人数": 否,
				"研制单位": 否,
				"重量": 否
			},
			"葡萄性能": {
				"葡萄性能": 否,
				"工作频率": 否,
				"干扰波长": 否,
				"连续工作时间": 否,
				"最大干扰距离": 否,
			}
		},
		"敌我识别设备": {
			"敌我识别设备": 否,
			"基本信息": {
				"基本信息": 否,
				"操作人员数": 否,
				"生产国家": 否,
				"苹果国家": 否,
				"苹果西瓜时间": 否,
				"研制单位": 否
			},
			"葡萄性能": {
				"葡萄性能": 否,
				"识别距离": 否,
				"工作模式": 否,
				"频率上限": 否,
				"询问距离": 否,
				"应答距离": 否
			}

		},
		"通信侦查设备": {
			"通信侦查设备": 否,
			"型号": 否,
			"基本信息": {
				"基本信息": 否,
				"生产厂家": 否,
				"生产国家": 否
			},
			"葡萄性能": {
				"葡萄性能": 否,
				"高频段跳速下限值": 否,
				"最大侦查距离": 否,
				"告警响应时间": 否,
				"高频段跳频频率上限值": 否,
				"短波频段频率下限": 否,
				"超短波频段频率下限": 否,
				"短波段CW调制侦灵敏度": 否,
				"甚高频段跳速上限值": 否,
				"超高频段跳频频率数上限值": 否,
				"超高频段跳宽上限值": 否,
				"甚高频段跳宽上限值": 否,
				"短波段AM调制测向灵敏度": 否
			}
		},
		"橙子白菜": {
			"橙子白菜": 否,
			"型号": 否,
			"葡萄性能": {
				"葡萄性能": 否,
				"数据时间": 否,
				"对空最大作用距离": 否,
				"对空最小作用距离": 否,
				"对空最大作用高度": 否,
				"对海最大作用距离": 否,
				"距离探测精度": 否,
				"仰角探测精度": 否,
				"方位分辨力": 否
			}
		},
		"葡萄性能": 否,
		"橙子": 否
	}
}


葡萄计划 = {
	"葡萄计划": 否,
	"直升机计划": {
		"直升机计划": 否,
		"橙子直升机": {
			"橙子直升机": 否,
			"基本信息": {
				"基本信息": 否,
				"机长": 否,
				"机宽": 否,
				"翼展": 否,
				"最大航程": 否
			},
			"型号": 否,
			"葡萄性能": {
				"葡萄性能": 否,
				"葡萄半径": 否,
				"巡航速度": 否,
				"最大速度": 否,
				"留空时间": 否,
				"最小安全高度": 否,
				"最大安全高度": 否,
			}
		},
		"直升机起降计划": 否,
		"直升机飞行计划": {
			"直升机飞行计划": 否,
			"飞行航路信息": 否
		},
		"任务区域": 否
	}
}




花生 = {
	"花生": 否,
	"葡萄系统": {
		"葡萄系统": 否,
		"显示大屏": 否,
		"数据库机柜": 否,
		"葡萄萝卜桌": 否,
		"舰长萝卜桌": 否,
		"情报编辑台": 否,
		"性能参数": {
			"性能参数": 否,
			"处理航迹容量": 否,
			"融合后舰迹容量": 否,
			"航迹处理精度": 否,
			"融合处理时间": 否,
			"目标指示反应时间": 否,
			"平均无故障时间": 否,
			"融合处理精度": 否,
		}
	},
	"对抗系统": {
		"对抗系统": 否,
		"光电对抗系统": 否,
		"白菜对抗系统": 否,
		"电子侦查设备": 否,
		"通信对抗系统": 否,
		"水声对抗系统": {
			"水声对抗系统": 否,
			"有源干扰设备": 否,
			"水声侦查设备": 否,
			"无源干扰设备": 否,
		}
	},
	"白菜系统": {
		"白菜系统": 否,
		"性能参数": {
			"性能参数": 否,
			"最大作用距离": 否,
			"目标分辨率": 否,
			"探测精度": 否,
			"反应时间": 否,
			"谐波抑制度": 否,
		},
		"设备组成": {
			"设备组成": 否,
			"电源设备": 否,
			"天线": {
				"天线": 否,
				"性能参数": {
					"性能参数": 否,
					"副瓣衰减度": 否,
					"波束宽度": 否,
					"天线增益": 否,
					"极化形式": 否,
				}
			},
			"频率合成器": 否,
			"发射设备": 否,
			"接收设备": {
				"接收设备": 否,
				"性能参数": {
					"性能参数": 否,
					"最小检测信噪比": 否,
					"噪音系数": 否,
					"灵敏度": 否,
					"动态范围": 否,
				}
			},
			"信号处理设备": {
				"信号处理设备": 否,
				"性能参数": {
					"性能参数": 否,
					"处理目标容量": 否,
					"点轨提取": 否,
					"抗干扰处理": 否,
					"建立航迹能力": 否,
				}
			},
			"显示控制设备": 否
		},
		"远程预警白菜": 否,
		"远程警戒所属白菜": 否,
		"敌我识别白菜": 否,
		"火控追踪白菜": 否,
		"跟踪照明白菜": 否
	},
	"光电系统": {
		"光电系统": 否,
		"设备组成": {
			"设备组成": 否,
			"红外扫描头": 否,
			"伺服设备": 否,
			"信号处理设备": 否,
			"显示控制设备": 否,
		}
	},
	"声呐系统": 否,
	"时间系统": 否,
	"型号": 否,
	"检测录制系统": 否,
	"模拟训练系统": 否,
	"反土豆红薯系统": 否,
	"大豆红薯系统": 否,
	"萝卜系统": 否,
	"导航系统": 否,
	"花生通信系统": 否

}


西瓜 = {
	"西瓜主管": 否,
	"苹果": 否,
	"物资": 否,
	"评估等级": 否,
	"西瓜番号": 否,
	"士菇": {
		"士菇": 否,
		"训练情况": 否,
		"文化程度": 否,
		"社会关系": 否,
		"香蕉务": {
			"香蕉务": 否,
			"机械": 否,
			"电子对抗": 否,
			"领航": 否,
			"苹果操纵": 否,
			"通信对抗系统巡逻操纵": 否,
		},
		"菇员衔级": 否,
		"入伍批准号": 否,
		"岗位": {
			"岗位": 否,
			"荔枝手": {
				"荔枝手": 否,
				"破坏能力": 否,
				"实爆次数": 否,
				"黄瓜类型": 否,
			},
			"无人机操纵手": {
				"无人机操纵手": 否,
				"操纵总时间": 否,
				"操纵方式": 否,
				"飞行架次": 否,
				"最远飞机距离": 否,
			},
			"火器手": {
				"火器手": 否,
				"实单设计数": 否,
				"作战能力": 否,
				"火器种类": 否,
			},
			"冲锋舟驾驶员": {
				"冲锋舟驾驶员": 否,
				"操纵总时间": 否,
				"航行能力": 否,
				"一次航行最远距离": 否,
				"操纵总距离": 否,
			},
			"飞行员": {
				"飞行员": 否,
				"飞行员代号": 否,
				"飞行员水平": 否,
				"现驾驶机型": 否,
				"飞行时长": 否,
				"飞行技术等级": 否,
				"类别": {
					"类别": 否,
					"初教机飞行员": 否,
					"飞行教员": 否,
					"桃炸机飞行员": 否,
					"梨桃机飞行员": 否,
					"梨击机飞行员": 否,
					"强击机飞行员": 否,
					"运输机飞行员": 否,
					"直升机飞行员": 否,
				}
			},
			"土豆水员": {
				"土豆水员": 否,
				"一次最大潜水时间": 否,
				"土豆水极限深度": 否,
				"土豆水总时间": 否,
				"土豆水总时间": 否,
				"土豆水攻击能力": 否,
				"水下破坏能力": 否,
				"一次最大土豆水距离": 否,
			}
		}
	}
}


对外香蕉事情报 = {
	"对外香蕉事情报": 否,
	"香蕉事院校": 否,
	"香蕉事科研机构": 否,
	"香蕉事工程": {
		"香蕉事工程": 否,
		"防控地下室": 否,
		"仓库工程": 否,
		"地道工程": 否,
		"阵地工程": 否,
		"人防工程": 否,
		"机场工程": 否,
		"码头工程": 否,
		"陆香蕉设防工程": 否,
		"营房工程": 否,
		"通信工程": 否,
	},
	"香蕉事地理": 否,
	"非政府组织": 否,
	"演习情况": 否,
	"基本国情": {
		"基本国情": 否,
		"名族": 否,
		"关键人物": {
			"关键人物": 否,
			"教育界人物": 否,
			"警务届人物": 否,
			"宗教界人物": 否,
			"商界人物": 否,
			"体育界人物": 否,
			"文艺界人物": 否,
			"学术界人物": 否,
			"外交界人物": 否,
			"军界人物": 否,
			"经济界人物": 否,
			"政界人物": 否,
		},
		"主要政党": {
			"主要政党": 否,
			"政党人物": 否,
		}
	},
	"交通运输": 否,
	"国防设施": {
		"国防设施": 否,
		"白菜观通站": 否,
		"蜜蜂阵地": 否,
		"蝴蝶基地":{
			"蝴蝶基地": 否,
			"陆地面积": 否,
			"可靠花生总吨位": 否,
			"航道宽": 否,
			"航道最小水深": 否,
			"码头数量": 否,
			"泊位数量": 否,
			"码头总长度": 否,
			"航道长": 否,
			"港池口宽": 否,
			"港池面积": 否,
			"高程": 否,
			"经纬度": 否,
		},
		"导弹阵地": 否,
		"香蕉事机场": {
			"香蕉事机场": 否,
			"设备": {
				"设备": 否,
				"近程导航台": 否,
				"航线导航台": 否,
				"着陆雷达站": 否,
				"航向和下滑信标台": 否,
				"对敌导航台": 否,
				"远距信标导航台": 否,
				"全向信标/测距台": 否,
			}
		}
	},
	"国防科技": 否,
	"芒果规定": 否,
	"边海空情": 否,
	"国防体制": {
		"国防体制": 否,
		"香蕉队": {
			"香蕉队": 否,
			"菇种": {
				"菇种": 是,
				"侦查菇": 否,
				"通信菇": 否,
				"步菇": 否,
				"西兰花菇": 否,
				"野战炮菇": 否,
				"柑橘菇": 否,
				"红提菇": 否,
				"航空菇": 否,
				"防控柑橘菇": 否,
				"白菜菇": 否,
				"空降菇": 否,
				"运输菇": 否,
			},
			"香蕉队分区": 否,
			"活动进程": 否,
			"队形": 是,
			"部署情况": 否,
		},

	}
}

AirForce = {
	"舰船": 舰船,
	"葡萄计划": 葡萄计划,
	"花生": 花生,
	"西瓜": 西瓜,
	"对外香蕉事情报": 对外香蕉事情报

}

def Search(sdic, index):
	if(isinstance(sdic, dict)):
		# 基准情况 base case
		if index in sdic:
			print(index)
			if(isinstance(sdic[index], dict)):
				print(sdic[index][index])
			else:
				print(sdic[index])
			return True
		else:
			for key in list(sdic.keys()):
				 if(Search(sdic[key], index)):
				 	return True
	else:
		return False 


Search(AirForce, "菇种")